// @Author EthanScriptOn
// @Desc
package log

import (
	"gitee.com/fatzeng/srf_switch_log/log_define"
	"gitee.com/fatzeng/srf_switch_log/log_filter"
	"gitee.com/fatzeng/srf_switch_log/log_rotation"
)

// RuleBinding The structure of the log item after it has been tiled
type RuleBinding struct {
	LogLevel                log_define.LogLevel            // LogLevel Log level
	RulesTag                []log_filter.JudgeTag          // RulesTag Filter items
	OutPutTemplate          []log_define.LogSnapshotOutBit // OutPutTemplate Template content
	OutPutPath              string                         // OutPutPath The file path of the output
	OutPutType              log_define.OutPutType          // OutPutType Output mode
	OutPutFileNamePattern   string                         // OutPutFileNamePattern The format of the output filename
	OutPutMaxFileSize       int                            // OutPutMaxFileSize The maximum file size of the output
	OutPutValidityRotation  log_define.LogSnapshotDateBit  // OutPutValidityRotation Cutting method
	OutPutMaxFiles          int                            // OutPutMaxFiles Maximum number of files
	OutPutCustomRotationTag log_rotation.CustomRotationTag // OutPutCustomRotationTag Custom cutting logic
}
